10 POKE53280,0:POKE53281,0 20 PRINT"[147]UNSCRATCH FILE" 30 PRINT"[159]COPYRIGHT (C) 1987 BY JIM DREW" 40 IFQP>0THENGOTO80 50 PRINT"[159]INSERT DISK TO BE CHECKED INTO DRIVE" 60 PRINT"AND PRESS [RETURN]" 70 GETX$:IFX$<>CHR$(13)THEN70 80 PRINT"[159]FILE TO UNSCRATCH? (* FOR WILD CARD)" 90 INPUTN$:IFN$=""THENEND 100 Q=32:F=256:T=40:S=3:W=0 110 Z$=CHR$(0):D$=RIGHT$(STR$(D),1) 120 N$=LEFT$(N$,16):L=LEN(N$) 130 IFRIGHT$(N$,1)<>"*"THEN150 140 L=L-1:N$=LEFT$(N$,L):W=1:GOTO170 150 IFL=16THEN170 160 FORX=L+1TO16:N$=N$+CHR$(160):NEXT:L=16 170 OPEN1,8,15,"I"+D$:GOSUB500 180 OPEN2,8,2,"#":GOSUB500 190 PRINT#1,"U1:";2;D;T;S:GOSUB 500 200 PRINT#1,"B-P:";2;0:GET#2,A$,B$ 210 TR=ASC(A$+Z$):SC=ASC(B$+Z$):H=2 220 PRINT#1,"B-P:";2;H:GET#2,T$ 230 C=ASC(T$+Z$):IFC>0THEN270 240 GET#2,A$,B$:F$="":FORX=1TO16 250 GET#2,T$:F$=F$+T$:NEXT:IFF$=""THEN290 260 IFL=0ORN$=LEFT$(F$,L)THEN330 270 H=H+Q:IFH0THENT=TR:S=SC:GOTO190 290 IFWTHENPRINT"NO MORE FILES...":GOTO460 300 PRINT"[159]FILE NOT FOUND IN DIRECTORY" 310 FORDE=1TO4000:NEXT 320 CLOSE2:CLOSE1:GOTO80 330 A=ASC(A$+Z$):B=ASC(B$+Z$) 340 PRINT"[147][159]SCRATCHED FILE:";F$ 350 PRINT"[159]STARTING ON TRACK";A;"[157], SECTOR";B 360 PRINT"[159]REVIVE THIS FILE"; 370 INPUTX$:IFX$="Y"THEN400 380 IFWTHEN270 390 PRINT:GOTO460 400 PRINT"1[159]=SEQ 2[159]=PRG 3[159]=USR 4[159]=REL 5[159]=CBM " 410 PRINT"ENTER FILE TYPE (1[159]-5[159])"; 420 INPUTP:IFP<1ORP>5THEN380 430 PRINT#1,"B-P:";2;H:PRINT#2,CHR$(P+128); 440 PRINT#1,"U2:";2;D;T;S:GOSUB500:G=1 450 PRINT"FILE IS UNSCRATCHED":IFWTHENPRINT"[145][145]":GOTO270 460 PRINT"[159]REVIVE MORE FILES (Y[159]/N[159])"; 470 INPUTX$:IFX$="Y"THENCLOSE2:CLOSE1:GOTO10 480 IFG<>0THENCLOSE2:CLOSE1:GOTO550 490 CLOSE1:CLOSE2:CLOSE15:PRINT"[147]":END 500 INPUT#1,E,M$,J,K:IF E=0 THEN RETURN 510 PRINT "ERROR: ";E;M$;J;K 520 CLOSE2:CLOSE1:CLOSE15:PRINT"[155]PRESS ANY KEY TO CONTINUE" 530 GETK$:IFK$=""THEN530 540 CLR:GOTO10 550 PRINT"RE-BUILDING VALID BAM" 570 OPEN 1,8,15,"V"+D$:CLOSE1:CLR:GOTO10 580 RETURN